- name: Etckeeper commit if necessary
ansible.builtin.command: etckeeper commit "commit by ansible because installing {{ DOMAIN }}/{{ SITE }}"
+ ignore_errors: true
- name: Install required packages
ansible.builtin.apt:
- redis
- "site_{{ SIGLE }}_{{ SITE }}"
-- name: Bloc nextcloud_version
+- name: Bloc nouvelle version nextcloud
when: nouvelle_version is undefined
block:
- name: Demande la version de nextcloud à installer
ansible.builtin.set_fact:
nouvelle_version: "{{ nextcloud_version_prompt.user_input }}"
+- name: Bloc ancienne version nextcloud
+ when: ancienne_version is undefined
+ block:
- name: Demande la version de nextcloud déjà installée
ansible.builtin.pause:
prompt: "Quelle version de nextcloud déjà installée"
group: "{{ nextcloud_websrv_user }}"
mode: '640'
+- name: Recharger plusieurs services
+ ansible.builtin.service:
+ name: "{{ item }}"
+ state: reloaded
+ loop:
+ - "postgresql"
+ - "php{{ php_version }}-fpm"
+
- name: Lancement du script d'installation nextcloud # noqa : command-instead-of-module
become_user: "{{ nextcloud_php_user }}"
become: true
./console maintenance:install
--database='pgsql'
--database-name="php_{{ SIGLE }}_{{ SITE }}"
- --database-user="php_{{ SIGLE }}_{{ SITE }}/data/"
+ --database-user="php_{{ SIGLE }}_{{ SITE }}"
--database-host="/var/run/postgresql/"
+ --database-pass=""
--admin-user='admin'
--admin-pass='ckoideja'
- --data-dir="/home/sites/data/$TLD/{{ DOMAIN }}/{{ SITE }}/data/"
+ --data-dir="/home/sites/data/{{ TLD }}/{{ DOMAIN }}/{{ SITE }}/data/"
args:
chdir: "{{ nextcloud_webroot }}"
register: install_result
var: install_result
when: install_result is defined
+- name: Afficher les logs du script d'install
+ ansible.builtin.fail:
+ msg: "Le script d'install a échoué: Voir les logs ci-dessus"
+ when: install_result.failed
+
- name: Créer les fichiers spécifiques nextcloud
ansible.builtin.template:
src: "templates/{{ item.src }}"
- name: Creation d'un lien symbolique vers le configuration nextcloud commun
ansible.builtin.file:
- src: "../../../../nextcloud/common/common.config.php"
- dest: "config/common.config.php"
+ src: "../../../../nextcloud/common.config.php"
+ path: "{{ nextcloud_webroot }}/config/common.config.php"
owner: nextcloud
group: nextcloud
state: link
follow: false
-- name: Create sigle nextcloud config
- become_user: "{{ nextcloud_php_user }}"
- become: true
- ansible.builtin.template:
- src: templates/sigle.config.php.j2
- dest: "{{ nextcloud_webroot }}/config/sigle.config.php"
- owner: "{{ nextcloud_php_user }}"
- group: "{{ nextcloud_websrv_user }}"
- mode: '640' # or u=rwx,g=r,o=
-
- name: Pour chaque base, ajouter les droits suivants à l'utilisateur php
become_user: postgres
become: true
community.postgresql.postgresql_privs:
db: "{{ item.db }}"
privs: "{{ item.privs }}"
- type: "{{ item.type |default(omit) }}"
+ type: "{{ item.type | default(omit) }}"
objs: "{{ item.objs }}"
role: "{{ item.role }}"
- grant_option: "{{ item.grant_option |default(omit) }}"
+ grant_option: "{{ item.grant_option | default(omit) }}"
loop_control:
label: "{{ item.name }}"
loop:
objs: "public"
role: "{{ nextcloud_php_user }}"
name: "GRANT USAGE,CREATE ON SCHEMA public TO php_{{ SIGLE }}_nuage;"
- - db: "{{ nextcloud_db_name }}"
- privs: "SELECT"
- type: "table"
- objs: "pg_namespace"
- role: "{{ nextcloud_php_user }}"
- name: "GRANT SELECT ON TABLE pg_namespace TO php_{{ SIGLE }}_nuage;"
- - db: "{{ nextcloud_db_name }}"
- privs: "SELECT"
- type: "table"
- objs: "pg_collation"
- role: "{{ nextcloud_php_user }}"
- name: "GRANT SELECT ON TABLE pg_collation TO php_{{ SIGLE }}_nuage;"
- - db: "{{ nextcloud_db_name }}"
- privs: "SELECT"
- type: "table"
- objs: "pg_index"
- role: "{{ nextcloud_php_user }}"
- name: "GRANT SELECT ON TABLE pg_index TO php_{{ SIGLE }}_nuage;"
- - db: "{{ nextcloud_db_name }}"
- privs: "SELECT"
- type: "table"
- objs: "pg_attrdef"
- role: "{{ nextcloud_php_user }}"
- name: "GRANT SELECT ON TABLE pg_attrdef TO php_{{ SIGLE }}_nuage;"
- - db: "{{ nextcloud_db_name }}"
- privs: "SELECT"
- type: "table"
- objs: "pg_description"
- role: "{{ nextcloud_php_user }}"
- name: "GRANT SELECT ON TABLE pg_description TO php_{{ SIGLE }}_nuage;"
- - db: "{{ nextcloud_db_name }}"
- privs: "SELECT"
- type: "table"
- objs: "pg_settings"
- role: "{{ nextcloud_php_user }}"
- name: "GRANT SELECT ON TABLE pg_settings TO php_{{ SIGLE }}_nuage;"
- - db: "{{ nextcloud_db_name }}"
- privs: "SELECT"
- objs: "pg_database"
- role: "{{ nextcloud_php_user }}"
- name: "GRANT SELECT ON pg_database TO php_{{ SIGLE }}_nuage;"
+ # - db: "{{ nextcloud_db_name }}"
+ # privs: "SELECT"
+ # type: "table"
+ # objs: "pg_namespace"
+ # role: "{{ nextcloud_php_user }}"
+ # name: "GRANT SELECT ON TABLE pg_namespace TO php_{{ SIGLE }}_nuage;"
+ # - db: "{{ nextcloud_db_name }}"
+ # privs: "SELECT"
+ # type: "table"
+ # objs: "pg_collation"
+ # role: "{{ nextcloud_php_user }}"
+ # name: "GRANT SELECT ON TABLE pg_collation TO php_{{ SIGLE }}_nuage;"
+ # - db: "{{ nextcloud_db_name }}"
+ # privs: "SELECT"
+ # type: "table"
+ # objs: "pg_index"
+ # role: "{{ nextcloud_php_user }}"
+ # name: "GRANT SELECT ON TABLE pg_index TO php_{{ SIGLE }}_nuage;"
+ # - db: "{{ nextcloud_db_name }}"
+ # privs: "SELECT"
+ # type: "table"
+ # objs: "pg_attrdef"
+ # role: "{{ nextcloud_php_user }}"
+ # name: "GRANT SELECT ON TABLE pg_attrdef TO php_{{ SIGLE }}_nuage;"
+ # - db: "{{ nextcloud_db_name }}"
+ # privs: "SELECT"
+ # type: "table"
+ # objs: "pg_description"
+ # role: "{{ nextcloud_php_user }}"
+ # name: "GRANT SELECT ON TABLE pg_description TO php_{{ SIGLE }}_nuage;"
+ # - db: "{{ nextcloud_db_name }}"
+ # privs: "SELECT"
+ # type: "table"
+ # objs: "pg_settings"
+ # role: "{{ nextcloud_php_user }}"
+ # name: "GRANT SELECT ON TABLE pg_settings TO php_{{ SIGLE }}_nuage;"
+ # - db: "{{ nextcloud_db_name }}"
+ # privs: "SELECT"
+ # objs: "pg_database"
+ # role: "{{ nextcloud_php_user }}"
+ # name: "GRANT SELECT ON pg_database TO php_{{ SIGLE }}_nuage;"
- name: Creation d'un fichier cron pour /etc/cron.d
ansible.builtin.cron:
name: "{{ item }}"
state: reloaded
loop:
- - "postgresql"
- "php{{ php_version }}-fpm"
- "nginx"
$SIGLE = '{{ SIGLE }}';
{# $SECRET= 'fAn4PEVgj7h/FsdrIsbx5TplGneU+Ou882A7k2V81S7VN7iV';
$PASSWORDSALT = '1pqoguNi6JUhSHaoKWhDSWFP9nn8Mg';
-$INSTANCEID = 'ocsb50eb0b5c'; #}
-$MAIL_SMTPPASSWORD = '{{ MAIL_SMTPPASSWORD }}';
+$INSTANCEID = 'ocsb50eb0b5c';
+$MAIL_SMTPPASSWORD = '{{ MAIL_SMTPPASSWORD }}';#}
$CONFIG = [
'apps_paths' => [
],
],
'datadirectory' => "/home/sites/data/$TLD/$DOMAIN/$SITE/data/",
- 'dbname' => "php_{$SIGLE}_test_nuage",
- 'dbuser' => "php_{$SIGLE}_test_nuage",
+ 'dbname' => "php_{$SIGLE}_{$SITE}",
+ 'dbuser' => "php_{$SIGLE}_{$SITE}",
'overwrite.cli.url' => "http://$SITE.$DOMAIN.$TLD",
'mail_smtpmode' => 'smtp',
'mail_smtpsecure' => 'ssl',
'mail_smtpauth' => 1,
'mail_smtphost' => "smtp.$DOMAIN.$TLD",
'mail_smtpname' => "$SITE@$DOMAIN.$TLD",
- 'mail_smtppassword' => "$MAIL_SMTPPASSWORD",
'mail_smtpport' => '465',
'trusted_domains' => [
0 => "$SITE.$DOMAIN.$TLD",
],
- {# 'secret' => "$SECRET",
- 'passwordsalt' => "$PASSWORDSALT",
- 'instanceid' => "$INSTANCEID", #}
+ {# 'mail_smtppassword' => "$MAIL_SMTPPASSWORD", #}
];
\ No newline at end of file